package com.lebang.mapper;

import com.lebang.entity.task.TaskXianwan;
import com.lebang.example.TaskXianwanExample;
import com.lebang.model.cences.SdkMoney;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@Repository
public interface TaskXianwanMapper {
    long countByExample(TaskXianwanExample example);

    int deleteByExample(TaskXianwanExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(TaskXianwan record);

    int insertSelective(TaskXianwan record);

    List<TaskXianwan> selectByExample(TaskXianwanExample example);

    TaskXianwan selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") TaskXianwan record, @Param("example") TaskXianwanExample example);

    int updateByExample(@Param("record") TaskXianwan record, @Param("example") TaskXianwanExample example);

    int updateByPrimaryKeySelective(TaskXianwan record);

    int updateByPrimaryKey(TaskXianwan record);

    int getByOrderNum(String ordernum);

    BigDecimal sumXianwanByTime(@Param("appStore") String appStore, @Param("star") LocalDateTime star, @Param("end") LocalDateTime end, @Param("type") int type);

    BigDecimal todayMySdkMoney(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    BigDecimal todayUserSdkMoney(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    int xianwanMember(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    BigDecimal xianwanMoney(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    int todayxianwanMember(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    BigDecimal todayxianwanMoney(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    List<SdkMoney> selectByTimeAndAppStore(@Param("appStore") String appStore, @Param("star") LocalDateTime star, @Param("end") LocalDateTime end);

    int selectByMemberId(@Param("star") LocalDateTime star, @Param("end") LocalDateTime end, @Param("memberId") String memberId);
}